package com.ruoyi.mes.material.service;

import java.util.List;
import com.ruoyi.mes.material.domain.SmesMaterialOutInBill;

/**
 * 原料出入库订单管理Service接口
 *
 * @author simpsense
 * @date 2020-12-15
 */
public interface ISmesMaterialOutInBillService
{
    /**
     * 查询原料出入库订单管理
     *
     * @param outInBillNo 原料出入库订单管理ID
     * @return 原料出入库订单管理
     */
    public SmesMaterialOutInBill selectSmesMaterialOutInBillById(String outInBillNo);

    /**
     * 查询原料出入库订单管理列表
     *
     * @param smesMaterialOutInBill 原料出入库订单管理
     * @return 原料出入库订单管理集合
     */
    public List<SmesMaterialOutInBill> selectSmesMaterialOutInBillList(SmesMaterialOutInBill smesMaterialOutInBill);

    /**
     * 新增原料其他出库单
     *
     * @param smesMaterialOutInBill 原料出入库订单管理
     * @return 结果
     */
    public int insertSmesMaterialOutBillOther(SmesMaterialOutInBill smesMaterialOutInBill);

    /**
     * 生产领料
     *
     * @param smesMaterialOutInBill 原料出入库订单管理
     * @return 结果
     */
    public int insertSmesMaterialOutBillNormal(SmesMaterialOutInBill smesMaterialOutInBill);

    public int insertSmesMaterialInBillOther(SmesMaterialOutInBill smesMaterialOutInBill);
    /**
     * 修改原料出入库订单管理
     *
     * @param smesMaterialOutInBill 原料出入库订单管理
     * @return 结果
     */
    public int updateSmesMaterialOutInBill(SmesMaterialOutInBill smesMaterialOutInBill);

    /**
     * 批量删除原料出入库订单管理
     *
     * @param outInBillNos 需要删除的原料出入库订单管理ID
     * @return 结果
     */
    public int deleteSmesMaterialOutInBillByIds(String[] outInBillNos);

    /**
     * 删除原料出入库订单管理信息
     *
     * @param outInBillNo 原料出入库订单管理ID
     * @return 结果
     */
    public int deleteSmesMaterialOutInBillById(String outInBillNo);
}